package com.itheima.api.treemap.demo01;

import java.util.Comparator;
import java.util.Set;
import java.util.TreeMap;

/**
 * TreeMap集合的第一道练习题
 * 需求：TreeMap集合键是String值是String的案例
 */
public class TreeMapDemo01 {

    public static void main(String[] args) {

        // 1. 创建TreeMap集合对象
        /**
         * 第一种方式使用无参构造      public TreeMap() 使用自然排序
         * 第二种方式使用有参构造      public TreeMap(Comparator<? super K> comparator) 	比较器排序
         */
        // public TreeMap() 使用自然排序
        // TreeMap<String , String> treeMap = new TreeMap<String , String>() ;

        // public TreeMap(Comparator<? super K> comparator) 	比较器排序
//        TreeMap<String , String> treeMap = new TreeMap<String , String>(new Comparator<String>() {
//
//            @Override
//            public int compare(String o1, String o2) {
//                return o1.compareTo(o2);
//            }
//
//        }) ;

//        TreeMap<String , String> treeMap = new TreeMap<String , String>( (o1 , o2) -> {
//            return o1.compareTo(o2) ;
//        });

        // 使用lambda表达式的简化格式进行实现
        TreeMap<String , String> treeMap = new TreeMap<String , String>( (o1 , o2) -> o1.compareTo(o2) ) ;

        // 2. 添加元素
        treeMap.put("bilibili" , "北京");
        treeMap.put("aliali" , "杭州");
        treeMap.put("clicli" , "深圳");

        // 3. 遍历集合
        for(String key : treeMap.keySet())  {
            String value = treeMap.get(key);
            System.out.println(key + "----" + value);
        }


    }
}
